1. Technical Field
The subject matter described herein generally relates to the field of input/output (I/O) request servicing systems, where the system stores data in different tiers of data storage.
2. Background Information
Consider an input/output (I/O) request servicing system where the system services multiple clients and dispatches I/O requests for the multiple clients. Each client has specified different performance parameters for its I/O requests. In order to provide a better experience for the clients, the system should dispatch I/O requests in a manner that meets the specified parameters of the clients and efficiently uses storage devices to meet the specified parameters. In multitiered storage systems, a higher tier (e.g., solid-state drive (SSD)) has a higher performance but higher cost, and a lower tier (e.g., hard disk) has a lower cost but lower performance. To better utilize tiers, conventional systems try to store more-frequently and more-recently accessed data at higher storage tiers and less-frequently and less-recently accessed data at lower storage tiers. This is done by moving data between tiers based on data usage patterns, including frequency and recency of accesses to the data.